﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Chapter14
{
    /// <summary>
    /// 第14章 C# 语言的改进
    /// </summary>
    public class Program
    {
        public static void Main(string[] args)
        {
            #region 01 初始化器
            /*
             * 01 对象初始化器
             * 02 集合初始化器
             * */
            Code01.Code01.Demo.Begin();
            Code01.Code02.Demo.Begin();
            Code01.Code02.Example01.Demo.Begin();
            #endregion

            #region 02 类型推理
            Code02.Demo.Begin();
            #endregion

            #region 03 匿名类型
            Code03.Demo.Begin();
            Code03.Example02.Demo.Begin();
            #endregion

            #region 04 动态查找
            /*
             * 01 动态类型
             * 02 IDynamicMetaObjectProvider
             * */
            Code04.Example03.Demo.Begin();
            #endregion

            #region 05 高级方法参数
            /*
             * 01 可选参数
             * 01.01 可选参数的值
             * 01.02 Optionalt特性
             * 01.03 可选参数的顺序
             * 02 命名参数
             * 03 命名参数和可选参数的规则
             * */
            Code05.Code01.Demo.Begin();
            Code05.Code02.Demo.Begin();
            Code05.Code02.Example04.Demo.Begin();
            #endregion

            #region 06 扩展方法
            Code07.Demo.Begin();
            Code07.Example05.Demo.Begin();
            #endregion

            #region 07 Lambda 表达式
            /*
             * 01 复习匿名方法
             * 02 把 Lambda 表达式用于匿名方法
             * 03 Lambda 表达式的参数
             * 04 Lambda 表达式的语句体
             * 05 Lambda 表达式用作委托和表达式树
             * 06 Lambda 表达式和集合
             * */
            Code07.Code01.Demo.Begin();
            Code07.Code02.Demo.Begin();
            Code07.Code02.Example06.Demo.Begin();
            Code07.Code03.Demo.Begin();
            Code07.Code04.Demo.Begin();
            Code07.Code06.Demo.Begin();
            Code07.Code06.Example06.Demo.Begin();
            #endregion

            #region 08 调用方信息特性
            Code08.Demo.Begin();
            #endregion

            #region 09 小结
            #endregion

            #region 10 练习
            Code10.Demo.Begin();
            #endregion

            #region 11 本章要点
            #endregion
        }
    }
}
